<?php

/**
 * Application Models
 *
 * @package Application_Model
 * @subpackage Model
 * @author <SONIA ZRIBI>
 * @copyright ZF model generator
 * @license http://framework.zend.com/license/new-bsd     New BSD License
 */

/**
 * Abstract class for models
 */
require_once 'ModelAbstract.php';

/**
 * 
 *
 * @package Application_Model
 * @subpackage Model
 * @author <SONIA ZRIBI>
 */
class Application_Model_Statcoursesemestre extends Application_Model_ModelAbstract
{

    /**
     * Database var type int(11)
     *
     * @var int
     */
    protected $_Idstatcoursesemestre;

    /**
     * Database var type int(11)
     *
     * @var int
     */
    protected $_EffectifGroupe;

    /**
     * Database var type tinyint(4)
     *
     * @var int
     */
    protected $_Scénarii;

    /**
     * Database var type tinyint(4)
     *
     * @var int
     */
    protected $_ParaDev;

    /**
     * Database var type tinyint(4)
     *
     * @var int
     */
    protected $_ModifDev;

    /**
     * Database var type varchar(100)
     *
     * @var string
     */
    protected $_Observation1;

    /**
     * Database var type int(11)
     *
     * @var int
     */
    protected $_Interaction;

    /**
     * Database var type tinyint(4)
     *
     * @var int
     */
    protected $_TAF;

    /**
     * Database var type int(11)
     *
     * @var int
     */
    protected $_Nota;

    /**
     * Database var type varchar(100)
     *
     * @var string
     */
    protected $_Observation2;



    /**
     * Sets up column and relationship lists
     */
    public function __construct()
    {
        parent::init();
        $this->setColumnsList(array(
            'idstatcoursesemestre'=>'Idstatcoursesemestre',
            'effectif_groupe'=>'EffectifGroupe',
            'scénarii'=>'Scénarii',
            'para_dev'=>'ParaDev',
            'modif_dev'=>'ModifDev',
            'observation1'=>'Observation1',
            'interaction'=>'Interaction',
            'TAF'=>'TAF',
            'nota'=>'Nota',
            'observation2'=>'Observation2',
        ));

        $this->setParentList(array(
        ));

        $this->setDependentList(array(
        ));
    }

    /**
     * Sets column idstatcoursesemestre
     *
     * @param int $data
     * @return Application_Model_Statcoursesemestre
     */
    public function setIdstatcoursesemestre($data)
    {
        $this->_Idstatcoursesemestre = $data;
        return $this;
    }

    /**
     * Gets column idstatcoursesemestre
     *
     * @return int
     */
    public function getIdstatcoursesemestre()
    {
        return $this->_Idstatcoursesemestre;
    }

    /**
     * Sets column effectif_groupe
     *
     * @param int $data
     * @return Application_Model_Statcoursesemestre
     */
    public function setEffectifGroupe($data)
    {
        $this->_EffectifGroupe = $data;
        return $this;
    }

    /**
     * Gets column effectif_groupe
     *
     * @return int
     */
    public function getEffectifGroupe()
    {
        return $this->_EffectifGroupe;
    }

    /**
     * Sets column scénarii
     *
     * @param int $data
     * @return Application_Model_Statcoursesemestre
     */
    public function setScénarii($data)
    {
        $this->_Scénarii = $data;
        return $this;
    }

    /**
     * Gets column scénarii
     *
     * @return int
     */
    public function getScénarii()
    {
        return $this->_Scénarii;
    }

    /**
     * Sets column para_dev
     *
     * @param int $data
     * @return Application_Model_Statcoursesemestre
     */
    public function setParaDev($data)
    {
        $this->_ParaDev = $data;
        return $this;
    }

    /**
     * Gets column para_dev
     *
     * @return int
     */
    public function getParaDev()
    {
        return $this->_ParaDev;
    }

    /**
     * Sets column modif_dev
     *
     * @param int $data
     * @return Application_Model_Statcoursesemestre
     */
    public function setModifDev($data)
    {
        $this->_ModifDev = $data;
        return $this;
    }

    /**
     * Gets column modif_dev
     *
     * @return int
     */
    public function getModifDev()
    {
        return $this->_ModifDev;
    }

    /**
     * Sets column observation1
     *
     * @param string $data
     * @return Application_Model_Statcoursesemestre
     */
    public function setObservation1($data)
    {
        $this->_Observation1 = $data;
        return $this;
    }

    /**
     * Gets column observation1
     *
     * @return string
     */
    public function getObservation1()
    {
        return $this->_Observation1;
    }

    /**
     * Sets column interaction
     *
     * @param int $data
     * @return Application_Model_Statcoursesemestre
     */
    public function setInteraction($data)
    {
        $this->_Interaction = $data;
        return $this;
    }

    /**
     * Gets column interaction
     *
     * @return int
     */
    public function getInteraction()
    {
        return $this->_Interaction;
    }

    /**
     * Sets column TAF
     *
     * @param int $data
     * @return Application_Model_Statcoursesemestre
     */
    public function setTAF($data)
    {
        $this->_TAF = $data;
        return $this;
    }

    /**
     * Gets column TAF
     *
     * @return int
     */
    public function getTAF()
    {
        return $this->_TAF;
    }

    /**
     * Sets column nota
     *
     * @param int $data
     * @return Application_Model_Statcoursesemestre
     */
    public function setNota($data)
    {
        $this->_Nota = $data;
        return $this;
    }

    /**
     * Gets column nota
     *
     * @return int
     */
    public function getNota()
    {
        return $this->_Nota;
    }

    /**
     * Sets column observation2
     *
     * @param string $data
     * @return Application_Model_Statcoursesemestre
     */
    public function setObservation2($data)
    {
        $this->_Observation2 = $data;
        return $this;
    }

    /**
     * Gets column observation2
     *
     * @return string
     */
    public function getObservation2()
    {
        return $this->_Observation2;
    }

    /**
     * Returns the mapper class for this model
     *
     * @return Application_Model_Mapper_Statcoursesemestre
     */
    public function getMapper()
    {
        if ($this->_mapper === null) {
            $this->setMapper(new Application_Model_Mapper_Statcoursesemestre());
        }

        return $this->_mapper;
    }

    /**
     * Deletes current row by deleting the row that matches the primary key
     *
	 * @see Application_Model_Mapper_Statcoursesemestre::delete
     * @return int|boolean Number of rows deleted or boolean if doing soft delete
     */
    public function deleteRowByPrimaryKey()
    {
        if ($this->getIdstatcoursesemestre() === null) {
            throw new Exception('Primary Key does not contain a value');
        }

        return $this->getMapper()
                    ->getDbTable()
                    ->delete('idstatcoursesemestre = ' .
                             $this->getMapper()
                                  ->getDbTable()
                                  ->getAdapter()
                                  ->quote($this->getIdstatcoursesemestre()));
    }
}
